package com.example.martian.config;

/**
 * cache接口
 */
public interface CacheService {
    /**
     * 获取缓存
     *
     * @param key
     * @return
     */
    public <T> T cacheResult(String key);

    /**
     * 移除缓存
     *
     * @param key
     */
    public void cacheRemove(String key);

    /**
     * 模糊移除缓存
     *
     * @param key
     */
    public void cachePrexRemove(String prex);

    /**
     * 设置缓存
     *
     * @param key
     * @param value
     */
    public <T> void cachePut(String key, T value);

    /**
     * 设置缓存
     *
     * @param key
     * @param value
     */
    public <T> void cachePut(String key, T value, long express);

    //删除其他缓存
    public void cacheRemoveOtherDB(String key, int dbindex);

}
